
function validarCorreo(correo){
	var _expresionRegular=/([\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4})$/;
	return ((correo.length!=0) && (correo.match(_expresionRegular)));
}

YAHOO.namespace('contenedor');

var txtClaveLostFocus = function(pParam){
	if(pParam.value.length != 0 && !isNaN(pParam.value)){
		YAHOO.util.Connect.asyncRequest("GET", 
			"index.php?sec=activacion&modo=asincrono&opc=usuario&idusuario=" + pParam.value,
			YAHOO.contenedor.disparadorUsuario);
		var img = document.getElementById('imgExisteUsuario');
	    img.src = 'recursos/imagenes/cargando.gif';
	    img.alt = '...';
	    img.title = 'Verificando usuario';
    }else if(isNaN(pParam.value)){
		var img = document.getElementById('imgExisteUsuario');
        img.src = 'modulos/mod_activacion/noexiste.png';
        img.alt = 'No existe';
        img.title = 'Las claves deben ser num&eacute;ricas';
		mensaje("Las claves deben ser num&eacute;ricas",_MENSAJE_ERROR);
	}else{
    	var img = document.getElementById('imgExisteUsuario');
        img.src = 'modulos/mod_activacion/blank.png';
        img.alt = '';
        img.title = '';
        limpiarMensaje();
        var f = document.getElementById('frmAlta');
        f.ftxtNombre.value = '';
        f.ftxtApellidos.value = '';
        var btnActivar = document.getElementById('btnActivar');
		btnActivar.disabled = true;
    }
};

var nivelPassword = function(pParam){
	if(pParam.value.length != 0){
		var nivel = getNivelPassword(pParam.value);
		myJsProgressBarHandler.setPercentage('barraProgreso',nivel);
	}else
		myJsProgressBarHandler.setPercentage('barraProgreso',0);
	
};

var limpiar = function(){
	var img = document.getElementById('imgExisteUsuario');
    img.src = 'modulos/mod_activacion/blank.png';
    img.alt = '';
    img.title = '';
    limpiarMensaje();
    var le = document.getElementById('ftxtPwd');
    le.value = ''; 
    nivelPassword(le);
    var btnActivar = document.getElementById('btnActivar');
	btnActivar.disabled = true;
};

var usuarioExistente = false;

var validaFormulario = function(pForm){
	//Validamos formulario
	if(pForm.ftxtCuenta.value.length == 0 ||
	   pForm.ftxtPwd.value.length == 0 ||
	   pForm.ftxtPwd2.value.length == 0 ||
	   pForm.ftxtCorreo.value.length == 0){
		mensaje('Todos los campos son obligatorios.',_MENSAJE_ERROR);
		return false;   	
	}
	
	//Validacion de usuario
	if(pForm.ftxtCuenta.value.length != 0){
		if(!usuarioExistente){
			mensaje('Escriba una n&uacute;mero de control o clave de docente existentes.',_MENSAJE_ERROR);
			pForm.ftxtCuenta.focus();
			return false;
		}
	}
	
	//Nivel de contrasenia > 30%
	if(getNivelPassword(pForm.ftxtPwd.value) < 30){
		mensaje('El nivel de seguridad de la contrase&ntilde;a debe ser mayor a 30%.',_MENSAJE_ERROR);
		pForm.ftxtPwd.focus();
		return false;
	}
	
	//Coincidencia de contrasena
	if(pForm.ftxtPwd.value != pForm.ftxtPwd2.value){
		mensaje('Las contrase&ntilde;as no coinciden.',_MENSAJE_ERROR);
		pForm.ftxtPwd.focus();
		return false;
	}
	
	//Validamos correo electronico
	if(! validarCorreo(pForm.ftxtCorreo.value)){
		mensaje('Escriba un correo electr&oacute;nico v&aacute;lido.',_MENSAJE_ERROR);
		pForm.ftxtCorreo.focus();
		return false;
	}
	
	//Aceptar terminos de uso
	if(! pForm.fAcuerdo.checked){
		mensaje('Lea y acepte los t&eacute;rminos de uso.',_MENSAJE_ERROR);
		pForm.fAcuerdo.focus();
		return false;
	}
	
	//Ventana cargando...
	if(YAHOO.contenedor.espera.render(document.body))
		YAHOO.contenedor.espera.show();
};


function init(){
	
    var dialogoEspera = document.getElementById("dialogoEspera");
    dialogoEspera = replaceHtml(dialogoEspera, '');

    YAHOO.contenedor.espera = new YAHOO.widget.Panel('espera',
    {
        width: "240px",
        fixedcenter: true,
        close: false,
        draggable: false,
        zindex:4,
        modal: true,
        visible: false
    });

    YAHOO.contenedor.espera.setHeader("Enviando informaci&oacute;n...");
    YAHOO.contenedor.espera.setBody("<img src=\"modulos/mod_activacion/cargando.gif\" alt=\"Cargando...\" title=\"Cargando\"/>");

    YAHOO.contenedor.disparadorUsuario = {
    	success: function(pParam){
    		var respuesta = pParam.responseText;
            var infousuario = JSON.parse(respuesta);
            var img = document.getElementById('imgExisteUsuario');
            img.src = infousuario.imagenSrc;
            img.alt = infousuario.imagenAlt;
            img.title = infousuario.imagenTitle;
			
			//Variable global
			usuarioExistente = infousuario.existe;
			
            if(infousuario.existe == 1){
				//Llenamos los datos
				var f = document.getElementById('frmAlta');
	            //var cbo = f.frmCbo.childNodes;
	            f.ftxtNombre.value = infousuario.nombre;
	            f.ftxtApellidos.value = infousuario.apellidop + " " + infousuario.apellidom;
	            /*f.frdoM.value = infousuario.sexo;
	            f.ftxtAn.value = infousuario.anio_nacimiento;
	            for(var i=0;i<cbo.length;i++){
	                if(cbo.item(i).value == infousuario.estado){
	                    cbo.item(i).selected = true;
	                    break;
	                }
	            }
	            f.ftxtCiudad.value = infousuario.ciudad;*/
	            mensaje('Tu informaci&oacute;n se ha cargado.',_MENSAJE_INFORMACION);
	            informacionCargada = true;
				
				//Boton de activar
				var btnActivar = document.getElementById('btnActivar');
				btnActivar.disabled = false;
			}else if(infousuario.existe == 0){
            	mensaje('El usuario no est&aacute; registrado',_MENSAJE_ERROR);
            	var f = document.getElementById('frmAlta');
	            //var cbo = f.frmCbo.childNodes;
	            f.ftxtNombre.value = '';
	            f.ftxtApellidos.value = '';
	            //Boton de activar
				var btnActivar = document.getElementById('btnActivar');
				btnActivar.disabled = true;
			}else{
				mensaje('Tu cuenta ya est&aacute; activa.',_MENSAJE_ERROR);
            	var f = document.getElementById('frmAlta');
	            //var cbo = f.frmCbo.childNodes;
	            f.ftxtNombre.value = '';
	            f.ftxtApellidos.value = '';
	            //Boton de activar
				var btnActivar = document.getElementById('btnActivar');
				btnActivar.disabled = true;
			}
            document.frmAlta.ftxtPwd.focus();
    	},
    	failure: function(pParam){
    		mensaje('Fallo la obtenci&oacute;n de tu informaci&oacute;n', _MENSAJE_ERROR);
            //YAHOO.contenedor.espera.hide();
            var img = document.getElementById('imgExisteUsuario');
            img.src = 'modulos/mod_activacion/blank.png';
            img.alt = '';
            img.title = '';
    	}
    };
    document.getElementById('ftxtCuenta').focus();
}

var ocultaCargando = function(){
	YAHOO.contenedor.espera.hide();
};

//Esperamos a que se cargue el modelo de la pagina para cargar el dialogo
YAHOO.util.Event.onDOMReady(init);